package com.medisched.medisched.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 假期对象 holiday
 * 
 * @author ruoyi
 * @date 2025-05-15
 */
public class Holiday
{

    /** 主键 */
    private Long id;

    /** 用户ID */
    private Long userId;

    /** 假期日期 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date holidayDate;

    /** 请假原因 */
    private String reason;

    private Date createTime;


    public Holiday() {
    }

    public Holiday(Long id, Long userId, Date holidayDate, String reason) {
        this.id = id;
        this.userId = userId;
        this.holidayDate = holidayDate;
        this.reason = reason;
    }

    public Holiday(Long id, Long userId, Date holidayDate, String reason, Date createTime) {
        this.id = id;
        this.userId = userId;
        this.holidayDate = holidayDate;
        this.reason = reason;
        this.createTime = createTime;
    }

    /**
     * 获取
     * @return id
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置
     * @param id
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取
     * @return userId
     */
    public Long getUserId() {
        return userId;
    }

    /**
     * 设置
     * @param userId
     */
    public void setUserId(Long userId) {
        this.userId = userId;
    }

    /**
     * 获取
     * @return holidayDate
     */
    public Date getHolidayDate() {
        return holidayDate;
    }

    /**
     * 设置
     * @param holidayDate
     */
    public void setHolidayDate(Date holidayDate) {
        this.holidayDate = holidayDate;
    }

    /**
     * 获取
     * @return reason
     */
    public String getReason() {
        return reason;
    }

    /**
     * 设置
     * @param reason
     */
    public void setReason(String reason) {
        this.reason = reason;
    }

    public String toString() {
        return "Holiday{id = " + id + ", userId = " + userId + ", holidayDate = " + holidayDate + ", reason = " + reason + "}";
    }

    /**
     * 获取
     * @return createTime
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置
     * @param createTime
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
}
